plugins:
  utilities:
  - name: dbt-snowflake
    variant: dbt-labs
    pip_url: dbt-core~=1.3.0 dbt-snowflake~=1.3.0 git+https://github.com/meltano/dbt-ext.git@main
    commands:
      create_userdev_env:
        args: "run-operation create_userdev_env --args \"{'db_list': ['RAW'], 'dry_run':\
          \ False, 'schema_list': []}\""
        description: Clones all production schemas in the PREP database that the user
          has access to.

      run_dbt_artifacts: run --select dbt_artifacts.*

      run_marts: run --select marts.* common.* --exclude staging.*,dbt_artifacts.*
      test_marts: test --select marts.* common.* --exclude staging.*,dbt_artifacts.*

      run_staging_meltanohub: run --select staging.meltanohub.*
      run_snapshot_meltanohub: snapshot --select meltanohub.*
      test_source_meltanohub: test --select source:tap_meltanohub
      test_staging_meltanohub: test --select staging.meltanohub.*,test_type:generic

      run_snapshot_spreadsheets_anywhere: snapshot --select spreadsheets_anywhere.*
      test_source_spreadsheets_anywhere: test --select source:tap_spreadsheets_anywhere

      run_staging_snowplow: run --select staging.snowplow.*
      test_staging_snowplow: test --select staging.snowplow.*,test_type:generic

      run_staging_github_search: run --select staging.github_search.*
      test_staging_github_search: test --select staging.github_search.*,test_type:generic

      run_staging_github_meltano: run --select staging.github_meltano.*
      test_staging_github_meltano: test --select staging.github_meltano.*,test_type:generic

      run_staging_gitlab: run --select staging.gitlab.*
      test_staging_gitlab: test --select staging.gitlab.*,test_type:generic

      run_staging_slack: run --select staging.slack.*
      test_staging_slack: test --select staging.slack.*,test_type:generic

      run_staging_google_analytics: run --select staging.google_analytics.*
      test_staging_google_analytics: test --select staging.google_analytics.*,test_type:generic

      run_staging_cloudwatch: run --select staging.cloudwatch.*
      test_staging_cloudwatch: test --select staging.cloudwatch.*,test_type:generic

      run_hub_metrics: run --select publish.meltano_hub.*
      test_hub_metrics: test --select publish.meltano_hub.*

      run_slack_notifications: run --select publish.slack_notifications.*
    config:
      account: epa06486
      database_raw: RAW
      database_prep: PREP
